diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index cfcd6fd..dd1ad91 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -3,7 +3,7 @@
 # (C) Copyright 2000-2007
 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
 
-obj-$(CONFIG_DM_VIDEO) += pci_rom.o
+obj-$(CONFIG_VIDEO) += pci_rom.o
 obj-$(CONFIG_PCI) += pci-uclass.o pci_auto.o
 obj-$(CONFIG_DM_PCI_COMPAT) += pci_compat.o
 obj-$(CONFIG_PCI_SANDBOX) += pci_sandbox.o
diff --git a/drivers/serial/sandbox.c b/drivers/serial/sandbox.c
index f122e3f..f400381 100644
--- a/drivers/serial/sandbox.c
+++ b/drivers/serial/sandbox.c
@@ -139,7 +139,7 @@
 		return 0;
 
 	os_usleep(100);
-	if (IS_ENABLED(CONFIG_DM_VIDEO) && !IS_ENABLED(CONFIG_SPL_BUILD))
+	if (IS_ENABLED(CONFIG_VIDEO) && !IS_ENABLED(CONFIG_SPL_BUILD))
 		video_sync_all();
 	avail = membuff_putraw(&priv->buf, 100, false, &data);
 	if (!avail)
diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 8f0b005..c841b99 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -4,7 +4,7 @@
 
 menu "Graphics support"
 
-config DM_VIDEO
+config VIDEO
 	bool "Enable driver model support for LCD/video"
 	depends on DM
 	help
@@ -14,7 +14,7 @@
 	  option compiles in the video uclass and routes all LCD/video access
 	  through this.
 
-if DM_VIDEO
+if VIDEO
 
 config VIDEO_LOGO
 	bool "Show the U-Boot logo on the display"
@@ -891,6 +891,6 @@
 	help
 	  Support display of bitmaps file with 32-bit-per-pixel.
 
-endif # DM_VIDEO
+endif # VIDEO
 
 endmenu
diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index 1b2edc1..40a871d 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -12,8 +12,8 @@
 obj-$(CONFIG_CONSOLE_TRUETYPE) += console_truetype.o fonts/
 obj-$(CONFIG_DISPLAY) += display-uclass.o
 obj-$(CONFIG_VIDEO_MIPI_DSI) += dsi-host-uclass.o
-obj-$(CONFIG_DM_VIDEO) += video-uclass.o vidconsole-uclass.o
-obj-$(CONFIG_DM_VIDEO) += video_bmp.o
+obj-$(CONFIG_VIDEO) += video-uclass.o vidconsole-uclass.o
+obj-$(CONFIG_VIDEO) += video_bmp.o
 obj-$(CONFIG_PANEL) += panel-uclass.o
 obj-$(CONFIG_PANEL_HX8238D) += hx8238d.o
 obj-$(CONFIG_SIMPLE_PANEL) += simple_panel.o
diff --git a/drivers/video/exynos/Kconfig b/drivers/video/exynos/Kconfig
index 37e661b..599d19d 100644
--- a/drivers/video/exynos/Kconfig
+++ b/drivers/video/exynos/Kconfig
@@ -1,7 +1,7 @@
 
 menuconfig VIDEO_EXYNOS
 	bool "Enable Exynos video support"
-	depends on DM_VIDEO
+	depends on VIDEO
 	help
 	  Enable support for various video output options on Exynos SoCs.
 
diff --git a/drivers/video/imx/Kconfig b/drivers/video/imx/Kconfig
index 78eb0f2..afe950b 100644
--- a/drivers/video/imx/Kconfig
+++ b/drivers/video/imx/Kconfig
@@ -1,7 +1,7 @@
 
 config VIDEO_IPUV3
 	bool "i.MX IPUv3 Core video support"
-	depends on DM_VIDEO && (MX5 || MX6)
+	depends on VIDEO && (MX5 || MX6)
 	help
 	  This enables framebuffer driver for i.MX processors working
 	  on the IPUv3(Image Processing Unit) internal graphic processor.
diff --git a/drivers/video/meson/Kconfig b/drivers/video/meson/Kconfig
index 0c9ddeb..3c2d72d 100644
--- a/drivers/video/meson/Kconfig
+++ b/drivers/video/meson/Kconfig
@@ -6,7 +6,7 @@
 
 config VIDEO_MESON
 	bool "Enable Amlogic Meson video support"
-	depends on DM_VIDEO
+	depends on VIDEO
 	select DISPLAY
 	help
 	  Enable Amlogic Meson Video Processing Unit video support.
diff --git a/drivers/video/nexell_display.c b/drivers/video/nexell_display.c
index 42b8d92..5595796 100644
--- a/drivers/video/nexell_display.c
+++ b/drivers/video/nexell_display.c
@@ -542,7 +542,7 @@
 
 	/*
 	 * set environment variable "fb_addr" (frame buffer address), required
-	 * for splash image, which is not set if CONFIG_DM_VIDEO is enabled).
+	 * for splash image, which is not set if CONFIG_VIDEO is enabled).
 	 */
 	sprintf(addr, "0x%x", dp->fb_addr);
 	debug("%s(): env_set(\"fb_addr\", %s) ...\n", __func__, addr);
diff --git a/drivers/video/rockchip/Kconfig b/drivers/video/rockchip/Kconfig
index 0ade631..b038663 100644
--- a/drivers/video/rockchip/Kconfig
+++ b/drivers/video/rockchip/Kconfig
@@ -10,7 +10,7 @@
 
 menuconfig VIDEO_ROCKCHIP
 	bool "Enable Rockchip Video Support"
-	depends on DM_VIDEO
+	depends on VIDEO
 	help
 	  Rockchip SoCs provide video output capabilities for High-Definition
 	  Multimedia Interface (HDMI), Low-voltage Differential Signalling
diff --git a/drivers/video/stm32/Kconfig b/drivers/video/stm32/Kconfig
index 95d51bb..4806606 100644
--- a/drivers/video/stm32/Kconfig
+++ b/drivers/video/stm32/Kconfig
@@ -7,7 +7,7 @@
 
 menuconfig VIDEO_STM32
 	bool "Enable STM32 video support"
-	depends on DM_VIDEO
+	depends on VIDEO
 	help
 	  STM32 supports many video output options including RGB and
 	  DSI. This option enables these supports which can be used on
